package com.titanrise.crm.service;

import com.titanrise.crm.environment.menu.MenuContext;
import com.titanrise.crm.environment.menu.action.Action;

/**
 * @Description:
 * @Author: pront
 * @Time:2024-11-25 21:16
 */
public interface CustomerService {

    /**
     * 显示所有商品数据
     * @return action
     */
    Action showAllProducts();
    Action findById(MenuContext menuContext);

    Action manageUserInfo(MenuContext menuContext) throws InterruptedException;

    /**
     * 发送信息给销售
     * @return action
     */
    Action sendMsg2Salesperson(MenuContext menuContext) throws InterruptedException;

    /**
     * 收件箱
     * @return action
     */
    Action msgBox(MenuContext menuContext);

    /**
     * 阅读消息
     * @param menuContext 用户信息上下文
     * @return action
     */
    Action readMessage(MenuContext menuContext);

    /**
     * 删除消息
     * @return
     */
    Action deleteMessage();

    /**
     * 购买商品
     * @param menuContext 用户信息上下文
     * @return action
     **/
    Action buy(MenuContext menuContext);

    /**
     * 注销账户
     * @param menuContext 用户信息上下文
     * @return action
     */
    Action deleteAccount(MenuContext menuContext);

    /**
     * 修改用户名和密码
     *
     * @param menuContext 用户信息上下文
     * @return action
     */
    Action updateUsnaPasw(MenuContext menuContext);


    /**
     * 完善用户信息
     * @param menuContext 用户信息上下文
     * @return action
     */
    Action completeInfo(MenuContext menuContext);

    /**
     * 查看成交合同
     * @return action
     */
    Action showContract(MenuContext menuContext);

    /**
     * 查看自己所有合同的状态
     * @param menuContext 用户信息上下文
     * @return action
     */
    Action showContractStatus(MenuContext menuContext);
}
